package com.itqf.log;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * projectName: logandquartzgp8
 *
 * @author: 赵伟风
 * time: 2021/8/10 11:02
 *
 * 使用场景: slf4j + log4j
 *
 *   依赖: slf4j + log4j + 桥接表 slf4j-log4j12
 *   介绍: 依然支持log4j的配置文件,可以使用slf4j的接口规范!
 *
 * 对比: commons-logging / slf4j 区别!
 *    1.创建输出对象
 *       commons-logging: Log log = LogFactory(xx.class);
 *       slf4j: Logger logger = LoggerFactory(xx.class);
 *
 *    2.输出级别不同
 *       commons-logging: trace debug info warn error fatal
 *       slf4j:  trace debug info warn error
 *
 *    3.是否支持占位符
 *       slf4j: 支持 {}
 *       commons-logging: 不支持 只能字符串拼接
 *
 */
public class Slf4jUse {

    static Logger logger = LoggerFactory.getLogger(Slf4jUse.class);

    public static void main(String[] args) {

        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");  logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");
        logger.error("{}:{}--[{}]--{}--{}-{}","Sjf4j","main","空指针","未传递参数","参数非空判断!");


    }
}
